/**
 * Author(s): xuming.Wong <xuming.Wong@gmail.com>
 */

#ifndef __BUILDER_EXECUTOR_H__
#define __BUILDER_EXECUTOR_H__

#include "PQEngine.h"

namespace PQBuilder
{
	/*Execute wraped command for game builder.
	*/
	class BuilderExecutor
	{
	public:
		static const std::string COMMAND_DATA_TYPE;
		BuilderExecutor(char* data,int len);
		~BuilderExecutor();

		void exec();
	private:
		void addGPKResource();
		void createObject();
	private:
		PQEngine::GDatagram* _datagram;
		PQEngine::GDataParser* _parser;
		PQEngine::GDataName _command;
	};

}
#endif
